Enterprise desktop management is one of the most challenging tasks for Information Technology (IT) departments of large organizations today. A typical IT department needs to manage, protect, and distribute software updates and modifications, upgrade operating systems and applications, as well as be able to back up and restore the user's data, applications and settings on demand. One significant issue for IT departments involves the complexity of managing a large number of different desktop instances that exist on the computers of various enterprise users. The sheer number of computers to manage; the proliferation of operating system (OS) images and applications; and the complex set of operations, such as deployment, provisioning, patching, upgrading, installing and managing applications, performing backup and restore operations, compliance testing, troubleshooting and re-imaging; all make IT responsibilities a very challenging task. To compound these difficulties, today's enterprises are often dispersed over multiple geographic locations and the use of Local Area Networks (LANs) connected over one or more Wide Area Networks (WANs) with variable bandwidths and latencies is a serious barrier to providing efficient desktop management without sacrificing end user experience.
There exist a number of centralized backup and recovery solutions that are often utilized by IT departments of large organizations. These centralized backup solutions typically include functions for copying and archiving computer data so that it may be used to restore the original data after a loss event. For example, some backup software running on each end user's computer may periodically backup that user's data (e.g., documents, images, emails, etc.) to a central storage location, which may itself be replicated. If a user's computer subsequently breaks or malfunctions, the user's data could then be retrieved from the central storage location and provided to the user on a new or repaired device.
While these backup and recovery solutions have helped IT departments manage employee data, a number of inefficiencies remain in this space. For example, the storage capacity requirements for backing up all data of a large numbers of users can be substantial and it would be desirable to reduce those requirements. In most cases, not all of the data on each individual device is one hundred percent unique when compared to data of other users. For example, many devices may contain the same system files of common operating systems and/or certain applications. As such, it would not be efficient to duplicate such common files in central storage. Moreover, the input/output (I/O) operations for maintaining the backup data synchronized across numerous devices can significantly affect performance and it would be efficient to reduce such I/O operations for centralized backup storage systems.